An Imperative Object Calculus
نویسندگان
چکیده
1 Abstract. We develop an imperative calculus of objects. Its main type constructor is the one for object types, which incorporate variance annotations and Self types. A subtyping relation between object types supports object subsumption. The type system for objects relies on unusual but beneficial assumptions about the possible subtypes of an object type. With the addition of polymorphism, the calculus can express classes and inheritance.
منابع مشابه
An Imperative Object Calculus Basic Typing and Soundness
We develop an imperative calculus of objects that is both tiny and expressive. Our calculus provides a minimal setting in which to study the operational semantics and the typing rules of object-oriented languages. We prove type soundness using a simple subject-reduction approach.
متن کاملAn Imperative , First - Order Calculus withObject
This paper presents an imperative object calculus designed to support class-based programming via a combination of extensible objects and encapsulation. This calculus simpliies the language presented in 17] in that, like C++ and Java, it chooses to support an imperative semantics instead of method specialization. We show how Java-style classes and \mixins" may be coded in this calculus, prove a...
متن کاملAn Imperative, First-Order Calculus with Object Extension
This paper presents an imperative object calculus designed to support class-based programming via a combination of extensible objects and encapsulation. This calculus simplifies the language presented in [17] in that, like C++ and Java, it chooses to support an imperative semantics instead of method specialization. We show how Java-style classes and “mixins” may be coded in this calculus, prove...
متن کاملδ : an imperative object based calculus with delegation ?
Object based, imperative languages with delegation (eg SELF) support exploratory programming: composition of objects, sharing of attributes and modification of objects’ behaviour at run-time are easily expressible. Delegation allows objects to delegate execution of methods to other objects and to adapt delegated behaviour by overriding of method definitions. These features allow for creation of...
متن کاملImperative objects and mobile processes
An interpretation of Abadi and Cardelli’s first-order Imperative Object Calculus into a typed π-calculus is presented. The interpretation validates the subtyping relation and the typing judgements of the Object Calculus, and is computationally adequate. The proof of computational adequacy makes use of (a π-calculus version) of ready simulation, and of a factorisation of the interpretation into ...
متن کامل